//package com.ruoyi.topInsectImg;
//
//import com.ruoyi.common.utils.file.FileUploadUtils;
//import com.ruoyi.topInsectImg.domain.Device;
//import com.ruoyi.topInsectImg.domain.InsectImg;
//import com.ruoyi.topInsectImg.domain.StationList;
//import com.ruoyi.topInsectImg.domain.Terminal;
//import com.ruoyi.topInsectImg.utils.HttpClientUtils;
//import com.ruoyi.topInsectImg.utils.TopInsect;
//import com.ruoyi.topInsectImg.utils.soa.SOAResponse;
//import com.ruoyi.topInsectImg.utils.soa.SOAResponseList;
//
//
//import java.io.File;
//import java.io.IOException;
//import java.util.ArrayList;
//import java.util.HashMap;
//import java.util.List;
//import java.util.Map;
//
///**
// *
// *
// * @author Mr-Le
// */
//public class FinOpenApi {
//
//
//    public static void main(String[] args) throws IOException {
//        Map<String, Object> params = new HashMap<String, Object>();
//        params.put("user_name", "wzyq");
//        params.put("password", "1702a132e769a623c1adb78353fc9503");
//        SOAResponse soaResponse;
//        SOAResponseList soaResponseList ;
//
//        /* List 集合用来存放返回的数据 */
//        Integer[] stationId = new Integer[10];
//        List<Terminal> terminalList = new ArrayList<Terminal>();
//        List<Device> deviceList = new ArrayList<Device>();
//        List<InsectImg> insectImgList = new ArrayList<InsectImg>();
//
//        TopInsect topInsect = new TopInsect();
//
//        /* 1.登录，获取Token */
//        soaResponse = topInsect.topLogin(params);
//        params.put("user_token", soaResponse.getResult().get("user_token"));
//        System.out.println("-------------->1." + params.get("user_token"));
//
//        /* 2.获取基地列表 */
//        List<StationList> stationList = topInsect.getStationList(params);
//        for (int i = 0; i < stationList.size(); i++) {
//            stationId[i] = stationList.get(i).getStationId();
//        }
//
//        /* 3.获取基地下所有终端列表 */
//        for (Integer station : stationId) {
//            if (station != null){
//                params.put("station_id", station);
//                List<Terminal> list = topInsect.getTerminal(params);
//                if (list.isEmpty()){
//                    System.out.println("error");
//                    return;
//                }else {
//                    terminalList.addAll(list);
//                }
//            }
//        }
//        System.out.println("获取终端设备列表成功!");
//
//        /* 4.获取所有终端下设备列表 */
//        for (Terminal terminal : terminalList) {
//            if (terminal != null) {
//                params.put("terminal_id", terminal.getTerminalId());
//                List<Device> device = topInsect.getDevice(params);
//                if (device.isEmpty()) {
//                    System.out.println("error");
//                    return;
//                } else {
//                    deviceList.addAll(device);
//                }
//            }
//        }
//        System.out.println("获取设备列表成功!");
//        System.out.println("-------------->4." + deviceList.toString());
//
//
//        /* 5.根据设备获取图片列表 */
//        params.put("start_date", "20210320000000");
//        params.put("end_date", "20210321000000");
//        params.put("record_count", 50);
//        for (Device device : deviceList) {
//            params.put("device_id", device.getDeviceId());
//            List<InsectImg> insectImg = topInsect.getInsectImg(params);
//            if (insectImg.isEmpty()){
//                System.out.println("error");
//                return;
//            }else {
//                insectImgList.addAll(insectImg);
//            }
//        }
//        System.out.println("获取图片列表成功!");
//
//        for (InsectImg insectImg : insectImgList) {
//            File localFile = getAbsoluteFile("D:\\ruoyi\\" + insectImg.getDeviceId(), insectImg.getImageName());
//            boolean downloadImage = HttpClientUtils.downloadImage(insectImg.getImgUrl(), "JPEG", localFile);
//            System.out.println("----------------------->图片保存：" + downloadImage);
//            System.out.println(insectImg.getImageName());
//        }
//
//    }
//
//    private static final File getAbsoluteFile(String uploadDir, String fileName) throws IOException
//    {
//        File desc = new File(uploadDir + File.separator + fileName);
//
//        if (!desc.getParentFile().exists())
//        {
//            desc.getParentFile().mkdirs();
//        }
//        if (!desc.exists())
//        {
//            desc.createNewFile();
//        }
//        return desc;
//    }
//}
